package controllers

import (
	"encoding/json"
	"fmt"
	"github.com/astaxie/beego"
	"webProTest/service"
)

type GetMovieInfoController struct {
	beego.Controller
}
type BussinessController struct {
	beego.Controller
}

type MovieInfo struct {
	Id   string `json:"id"`   // 注意首字母大写
	Name string `json:"name"` // 并且写明与json字段的映射关系，否则Unmarshal函数不好用
}

func (c *GetMovieInfoController) Get() {
	id := c.GetString(":id")
	name := c.GetString(":name")
	id2 := c.Ctx.Input.Param(":id")
	name2 := c.Ctx.Input.Param(":name")
	c.Ctx.WriteString("第一种id:" + id + "第一种name:" + name + "第二种id:" + id2 + "第二种name:" + name2)
	c.TplName = "index.tpl"
}

func (c *GetMovieInfoController) Post() {
	var MovieInfo_obj MovieInfo
	body := c.Ctx.Input.RequestBody //这是request的body 的json二进制数据
	fmt.Println(body)
	json.Unmarshal(body, &MovieInfo_obj) //解析二进制json，把结果放进MovieInfo_obj中
	fmt.Println(MovieInfo_obj)
	c.Data["json"] = map[string]interface{}{"result": MovieInfo_obj, "msg": "获取成功", "code": "200"} // 设置返回值
	c.ServeJSON()                                                                                  // 返回json数据
}

func (c *BussinessController) Get() {
	var configs []service.SystemSonfig
	body := c.Ctx.Input.RequestBody //这是request的body 的json二进制数据
	fmt.Println(body)
	configs = service.QueryData()
	json.Unmarshal(body, &configs) //解析二进制json，把结果放进MovieInfo_obj中
	fmt.Println(configs)

	c.Data["json"] = map[string]interface{}{"result": configs, "msg": "获取成功", "code": "200"} // 设置返回值
	c.ServeJSON()                                                                            // 返回json数据
}

type Param struct {
	Id   string
	Name string
}

func (c *BussinessController) Post() {
	//data := c.Ctx.Input.RequestBody
	//fmt.Print(data)
	//c.ServeJSON()     // 返回json数据
	//id := c.GetString("id")
	//fmt.Print(id)
	var param Param
	body := c.Ctx.Input.RequestBody //这是获取到的json二进制数据
	fmt.Println(body)
	json.Unmarshal(body, &param) //解析二进制json，把结果放进ob中
	paramObj := &Param{Id: param.Id, Name: param.Name}
	fmt.Println(paramObj)
	c.Data["json"] = map[string]interface{}{"result": true, "msg": "成功"}
	c.ServeJSON()
}
